ãã€ãã£ãCSSã«Sassé¢šã®æ§æãããããCSSãã¹ãã£ã³ã°ã®åãæ¢æ±ããã®æ°æ©èœããããã«ã¹ã¿ã€ãªã³ã°ãç°¡çŽ åããå¯èªæ§ãšä¿å®æ§ãåäžãããããåŠã³ãŸãããã
CSSãã¹ãã£ã³ã°ïŒäžçã®éçºè ã®ããã®ãã€ãã£ãCSSã«ãããSassé¢šã®æ§æ
é·å¹Žã«ããããWebéçºè ã¯æšæºCSSã®éçãå æããããã«ãSassãLessãStylusã®ãããªCSSããªããã»ããµã«äŸåããŠããŸããããããã®ããªããã»ããµã§æãæãããŠããæ©èœã®äžã€ããã¹ãã£ã³ã°ïŒå ¥ãåïŒã§ãããããã«ããCSSã«ãŒã«ã®äžã«å¥ã®CSSã«ãŒã«ãèšè¿°ããããšãã§ããããçŽæçã§æŽçãããæ§é ãäœæã§ããŸãããããŠä»ãCSSæšæºã®é²åã®ãããã§ããã€ãã£ãã®CSSãã¹ãã£ã³ã°ãã€ãã«ç»å Žããå€éšããŒã«ãå¿ èŠãšããªã匷åãªä»£æ¿ææ®µãæäŸããŠããŸãã
CSSãã¹ãã£ã³ã°ãšã¯ïŒ
CSSãã¹ãã£ã³ã°ã¯ãCSSã«ãŒã«ãä»ã®CSSã«ãŒã«å ã«å ¥ãåã«ã§ããæ©èœã§ããããã«ããã芪ã»ã¬ã¯ã¿å ã§ç¹å®ã®èŠçŽ ãšãã®ç¶æ ãã¿ãŒã²ããã«ã§ããCSSãããç°¡æœã§èªã¿ãããããŸããããã¯HTMLã®éå±€æ§é ãæš¡å£ããä¿å®æ§ãåäžãããåé·æ§ãåæžããŸããããã²ãŒã·ã§ã³ã¡ãã¥ãŒãäŸã«èããŠã¿ãŸããããåŸæ¥ã¯ã次ã®ãããªCSSãèšè¿°ããŠãããããããŸããïŒ
.navbar {
background-color: #f0f0f0;
padding: 10px;
}
.navbar a {
color: #333;
text-decoration: none;
}
.navbar a:hover {
color: #007bff;
}
CSSãã¹ãã£ã³ã°ã䜿ãã°ãããæ§é åãããã¢ãããŒãã§åãçµæãéæã§ããŸãïŒ
.navbar {
background-color: #f0f0f0;
padding: 10px;
a {
color: #333;
text-decoration: none;
&:hover {
color: #007bff;
}
}
}
a
ãša:hover
ã®ã«ãŒã«ã.navbar
ã«ãŒã«å
ã«ãã¹ããããŠããããšã«æ³šç®ããŠãã ãããããã¯ããããã®ã¹ã¿ã€ã«ãããã²ãŒã·ã§ã³ããŒå
ã®ã¢ã³ã«ãŒã¿ã°ã«ã®ã¿é©çšãããããšãæç¢ºã«ç€ºããŠããŸãã&
èšå·ã¯èŠªã»ã¬ã¯ã¿ïŒãã®å Žåã¯.navbar
ïŒãåç
§ãã:hover
ã®ãããªç䌌ã¯ã©ã¹ã«ã¯äžå¯æ¬ ã§ãããã®ã¢ãããŒãã¯ãã·ã³ãã«ãªãŠã§ããµã€ãããäžçäžã®ãŠãŒã¶ãŒãå©çšããè€éãªãŠã§ãã¢ããªã±ãŒã·ã§ã³ãŸã§ã倿§ãªãããžã§ã¯ãã§ããŸãæ©èœããŸãã
ãã€ãã£ãCSSãã¹ãã£ã³ã°ã䜿çšããã¡ãªãã
ãã€ãã£ãCSSãã¹ãã£ã³ã°ã®å°å ¥ã¯ãWebéçºè ã«å€ãã®ã¡ãªããããããããŸãïŒ
- å¯èªæ§ã®åäžïŒ ãã¹ãã£ã³ã°ã¯HTMLã®æ§é ãåæ ãããããç°ãªãèŠçŽ ãšãã®ã¹ã¿ã€ã«ã®é¢ä¿ãçè§£ãããããªããŸããããã¯ãè€éãªCSSãã¡ã€ã«ãããã²ãŒãããã®ãå°é£ãªå€§èŠæš¡ãããžã§ã¯ãã§ç¹ã«äŸ¡å€ããããŸããè€æ°ã®ãã¹ããããèŠçŽ ãæã€è€éãªã³ã³ããŒãã³ããæ³åããŠã¿ãŠãã ããããã¹ãã£ã³ã°ã䜿ãã°ããã®ã³ã³ããŒãã³ãã«é¢é£ãããã¹ãŠã®ã¹ã¿ã€ã«ãäžç·ã«ã°ã«ãŒãåãããŸãã
- ä¿å®æ§ã®åŒ·åïŒ CSSã«ãŒã«ãéå±€çã«æŽçããããšã§ããã¹ãã£ã³ã°ã¯ã¹ã¿ã€ã«ã®å€æŽãæŽæ°ã容æã«ããŸãã芪ã»ã¬ã¯ã¿ãžã®å€æŽã¯ããã¹ããããåèŠçŽ ã«èªåçã«ã«ã¹ã±ãŒããããæå³ããªãå¯äœçšãåŒãèµ·ãããªã¹ã¯ãäœæžããŸããããã²ãŒã·ã§ã³ããŒã®èæ¯è²ã倿Žããå¿
èŠãããå Žåã
.navbar
ã«ãŒã«ãä¿®æ£ããã ãã§ããã¹ãããããã¹ãŠã®ã¹ã¿ã€ã«ã®äžè²«æ§ãä¿ãããŸãã - ã³ãŒãã®éè€åæžïŒ ãã¹ãã£ã³ã°ã«ããã芪ã»ã¬ã¯ã¿ãç¹°ãè¿ãå¿ èŠããªããªããããã¯ãªãŒã³ã§ç°¡æœãªã³ãŒãã«ãªããŸããããã«ãããã¡ã€ã«ãµã€ãºãåæžãããç¹ã«å€æ°ã®CSSã«ãŒã«ãæã€å€§èŠæš¡ãªãŠã§ããµã€ãã§ããã©ãŒãã³ã¹ãåäžããŸããç¹å®ã®ã³ã³ããå ã®è€æ°ã®èŠçŽ ãã¹ã¿ã€ãªã³ã°ããå¿ èŠãããã·ããªãªãèããŠã¿ãŠãã ãããåã«ãŒã«ã§ã³ã³ããã»ã¬ã¯ã¿ãç¹°ãè¿ãæå®ãã代ããã«ãã³ã³ããã»ã¬ã¯ã¿å ã«ã«ãŒã«ããã¹ãã§ããŸãã
- CSSèšèšã®ç°¡çŽ åïŒ ãã¹ãã£ã³ã°ã¯ãCSSèšèšã«ãããŠããã¢ãžã¥ãŒã«åãããã³ã³ããŒãã³ãããŒã¹ã®ã¢ãããŒããä¿é²ããŸããç¹å®ã®ã³ã³ããŒãã³ãã«é¢é£ããã¹ã¿ã€ã«ãåäžã®ãã¹ãããããããã¯ã«ã°ã«ãŒãåã§ããã³ãŒãã®ç®¡çãšåå©çšã容æã«ãªããŸããããã¯ãç°ãªãã¿ã€ã ãŸãŒã³ã«åæ£ããããŒã ã§äœæ¥ããå Žåã«ç¹ã«æçã§ãã
- ããªããã»ããµãžã®äŸåãªãïŒ ãã€ãã£ãCSSãã¹ãã£ã³ã°ã¯ãSassãLessãStylusã®ãããªCSSããªããã»ããµã®å¿ èŠæ§ããªãããŸããããã«ãããéçºã¯ãŒã¯ãããŒãç°¡çŽ åãããå€éšäŸåé¢ä¿ã®ç®¡çã«é¢é£ãããªãŒããŒããããåæžãããŸããããã«ãããæ°ããéçºè ãæ°ããããªããã»ããµã®æ§æãåŠã¶ããšãªããããžã§ã¯ãã«è²¢ç®ãããããªããŸãã
CSSãã¹ãã£ã³ã°ã®äœ¿ãæ¹
CSSãã¹ãã£ã³ã°ã¯ãæ¢åã®CSSã®æ £ç¿ã«åºã¥ããç°¡åãªæ§æã䜿çšããŸãã以äžã«äž»èŠãªæŠå¿µã®å èš³ã瀺ããŸãïŒ
åºæ¬çãªãã¹ãã£ã³ã°
ä»»æã®CSSã«ãŒã«ãå¥ã®CSSã«ãŒã«å ã«å ¥ãåã«ããããšãã§ããŸããäŸãã°ïŒ
.container {
width: 80%;
margin: 0 auto;
h2 {
font-size: 2em;
color: #333;
}
}
ãã®ã³ãŒãã¯ã.container
èŠçŽ å
ã®ãã¹ãŠã®h2
èŠçŽ ãã¹ã¿ã€ãªã³ã°ããŸãã
&
ã»ã¬ã¯ã¿ã®äœ¿çš
&
ã»ã¬ã¯ã¿ã¯èŠªã»ã¬ã¯ã¿ã衚ããŸããããã¯ç䌌ã¯ã©ã¹ãç䌌èŠçŽ ãçµååã«äžå¯æ¬ ã§ããäŸãã°ïŒ
button {
background-color: #007bff;
color: #fff;
padding: 10px 20px;
border: none;
cursor: pointer;
&:hover {
background-color: #0056b3;
}
&::after {
content: '';
display: block;
width: 100%;
height: 2px;
background-color: #0056b3;
}
}
ãã®äŸã§ã¯ã&:hover
ã¯ãã¿ã³ããããŒããããšãã«ã¹ã¿ã€ã«ãé©çšãã&::after
ã¯ãã¿ã³ã®åŸã«ç䌌èŠçŽ ã远å ããŸãã芪ã»ã¬ã¯ã¿ãåç
§ããããã«ã&ãã䜿çšããããšã®éèŠæ§ã«æ³šæããŠãã ããã
ã¡ãã£ã¢ã¯ãšãªãšã®ãã¹ãã£ã³ã°
ã¬ã¹ãã³ã·ããã¶ã€ã³ãäœæããããã«ãã¡ãã£ã¢ã¯ãšãªãCSSã«ãŒã«å ã«ãã¹ãããããšãã§ããŸãïŒ
.card {
width: 300px;
margin: 20px;
border: 1px solid #ccc;
@media (max-width: 768px) {
width: 100%;
margin: 10px 0;
}
}
ãã®ã³ãŒãã¯ãç»é¢å¹
ã768pxæªæºã®å Žåã«.card
èŠçŽ ã®å¹
ãšããŒãžã³ã調æŽããŸããããã¯ãäžçäžã®ãŠãŒã¶ãŒã䜿çšããããŸããŸãªç»é¢ãµã€ãºã«é©å¿ãããŠã§ããµã€ããäœæããããã®åŒ·åãªããŒã«ã§ãã
çµååãšã®ãã¹ãã£ã³ã°
CSSçµååïŒäŸïŒ>
, +
, ~
ïŒã¯ããã¹ããããã«ãŒã«å
ã§äœ¿çšããŠãèŠçŽ éã®ç¹å®ã®é¢ä¿ãã¿ãŒã²ããã«ããããšãã§ããŸãïŒ
.article {
h2 {
margin-bottom: 10px;
}
> p {
line-height: 1.5;
}
+ .sidebar {
margin-top: 20px;
}
}
ãã®äŸã§ã¯ã> p
ã¯.article
èŠçŽ ã®çŽæ¥ã®åã§ããæ®µèœãã¿ãŒã²ããã«ãã+ .sidebar
ã¯ã¯ã©ã¹.sidebar
ãæã€çŽåŸã®å
åŒèŠçŽ ãã¿ãŒã²ããã«ããŸãã
ãã©ãŠã¶ã®ãµããŒããšããªãã£ã«
2023幎åŸåçŸåšãCSSãã¹ãã£ã³ã°ã¯å€§ããªæ¯æãåŸãŠãããChromeãFirefoxãSafariãEdgeãå«ãã»ãšãã©ã®ã¢ãã³ãã©ãŠã¶ã§ãµããŒããããŠããŸãããã ããã¿ãŒã²ãããšãããŠãŒã¶ãŒãšã®äºææ§ã確ä¿ããããã«ãCan I useãªã©ã®ãªãœãŒã¹ã§çŸåšã®ãã©ãŠã¶ãµããŒãç¶æ³ã確èªããããšãéèŠã§ããCSSãã¹ãã£ã³ã°ããã€ãã£ãã«ãµããŒãããŠããªãå€ããã©ãŠã¶ã®å Žåã¯ãPostCSS Nestedãã©ã°ã€ã³ã®ãããªããªãã£ã«ã䜿çšããŠããã¹ããããCSSãäºææ§ã®ããã³ãŒãã«å€æã§ããŸãã
CSSãã¹ãã£ã³ã°ã®ãã¹ããã©ã¯ãã£ã¹
CSSãã¹ãã£ã³ã°ã«ã¯æ°å€ãã®å©ç¹ããããŸãããé床ã«è€éã§ä¿å®ãå°é£ãªã³ãŒããäœæããªãããã«ãæ éã«äœ¿çšããããšãäžå¯æ¬ ã§ãã以äžã«ããã€ãã®ãã¹ããã©ã¯ãã£ã¹ã瀺ããŸãïŒ
- ãã¹ãã£ã³ã°ã®éå±€ãæµ ãä¿ã€ïŒ æ·±ããã¹ããããã«ãŒã«ã¯CSSãèªã¿ã«ãããããããã°ãå°é£ã«ããå¯èœæ§ãããããé¿ããŠãã ãããæå€§ã§ã2ã3ã¬ãã«ã®ãã¹ãã£ã³ã°æ·±åºŠãç®æããŸãããã
- é¢é£ããã¹ã¿ã€ã«ã«ãã¹ãã£ã³ã°ã䜿çšããïŒ èŠªã»ã¬ã¯ã¿ãšè«ççã«é¢é£ããã¹ã¿ã€ã«ã®ã¿ããã¹ãããŠãã ãããåã«é¢é£ã®ãªãã¹ã¿ã€ã«ãã°ã«ãŒãåããããã ãã«ãã¹ãã£ã³ã°ã䜿çšããªãã§ãã ããã
- 詳现床ïŒSpecificityïŒã«æ³šæããïŒ ãã¹ãã£ã³ã°ã¯CSSã«ãŒã«ã®è©³çŽ°åºŠãé«ããäºæããªãåäœãåŒãèµ·ããå¯èœæ§ããããŸãã詳现床ã®ã«ãŒã«ãèªèããè³¢ã䜿çšããŠãã ããã
- ããã©ãŒãã³ã¹ãèæ ®ããïŒ ãã¹ãã£ã³ã°ã¯äžè¬çã«ã³ãŒãã®æŽçãæ¹åããŸãããé床ãªãã¹ãã£ã³ã°ã¯ããã©ãŒãã³ã¹ã«æªåœ±é¿ãäžããå¯èœæ§ããããŸãããã¹ãã£ã³ã°ã¯æŠç¥çã«äœ¿çšããã³ãŒãã培åºçã«ãã¹ãããŠãã ããã
- äžè²«ããåœåèŠåã«åŸãïŒ CSSã®ã¯ã©ã¹ãã»ã¬ã¯ã¿ã«äžè²«ããåœåèŠåãæ¡çšããããšã§ãå¯èªæ§ãšä¿å®æ§ãåäžããŸããããã«ãããããŸããŸãªå°åã®éçºè ãã³ãŒãããŒã¹ãè¿ éã«çè§£ããã®ã«åœ¹ç«ã¡ãŸãã
CSSãã¹ãã£ã³ã°ã®å®è·µäŸ
CSSãã¹ãã£ã³ã°ãããŸããŸãªUIã³ã³ããŒãã³ãã®ã¹ã¿ã€ãªã³ã°ã«ã©ã®ããã«äœ¿çšã§ããããããã€ãã®å®è·µçãªäŸãèŠãŠãããŸãããïŒ
ãã¿ã³
.button {
padding: 10px 20px;
border: none;
border-radius: 5px;
cursor: pointer;
&.primary {
background-color: #007bff;
color: #fff;
&:hover {
background-color: #0056b3;
}
}
&.secondary {
background-color: #f0f0f0;
color: #333;
&:hover {
background-color: #e0e0e0;
}
}
}
ãã®ã³ãŒãã¯ãæ±çšçãª.button
ã¯ã©ã¹ã®ã¹ã¿ã€ã«ãå®çŸ©ãããã¹ãã£ã³ã°ã䜿çšããŠãã©ã€ããªãã¿ã³ãšã»ã«ã³ããªãã¿ã³ã®ããªãšãŒã·ã§ã³ãäœæããŠããŸãã
ãã©ãŒã
.form-group {
margin-bottom: 20px;
label {
display: block;
margin-bottom: 5px;
}
input[type="text"],
input[type="email"],
textarea {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
border-radius: 5px;
}
.error-message {
color: red;
margin-top: 5px;
}
}
ãã®ã³ãŒãã¯ããã©ãŒã å ã®ãã©ãŒã ã°ã«ãŒããã©ãã«ãå ¥åãã£ãŒã«ãããšã©ãŒã¡ãã»ãŒãžãã¹ã¿ã€ãªã³ã°ããŠããŸãã
ããã²ãŒã·ã§ã³ã¡ãã¥ãŒ
.nav {
list-style: none;
margin: 0;
padding: 0;
li {
display: inline-block;
margin-right: 20px;
a {
text-decoration: none;
color: #333;
&:hover {
color: #007bff;
}
}
}
}
ãã®ã³ãŒãã¯ãããã²ãŒã·ã§ã³ã¡ãã¥ãŒããªã¹ãã¢ã€ãã ãããã³ã¡ãã¥ãŒå ã®ã¢ã³ã«ãŒã¿ã°ãã¹ã¿ã€ãªã³ã°ããŠããŸãã
CSSãã¹ãã£ã³ã° vs. CSSããªããã»ããµ
CSSãã¹ãã£ã³ã°ã¯ãé·å¹ŽCSSããªããã»ããµã«äŸåããŠããWebéçºè ã«ãšã£ãŠç»æçãªãã®ã§ããããªããã»ããµã¯å€æ°ãããã¯ã¹ã€ã³ã颿°ãªã©å¹ åºãæ©èœãæäŸããŸããããã€ãã£ãã®CSSãã¹ãã£ã³ã°ã¯ãããã®æ©èœã®å€§éšåããã©ãŠã¶å ã§çŽæ¥æäŸããŸãã以äžã«æ¯èŒã瀺ããŸãïŒ
æ©èœ | ãã€ãã£ãCSSãã¹ãã£ã³ã° | CSSããªããã»ããµïŒäŸïŒSassïŒ |
---|---|---|
ãã¹ãã£ã³ã° | ã¯ã | ã¯ã |
倿° | ã«ã¹ã¿ã ããããã£ïŒCSS倿°ïŒ | ã¯ã |
ããã¯ã¹ã€ã³ | ãããïŒ@property ãšHoudini APIã§éå®çãªæ©èœïŒ |
ã¯ã |
颿° | ãããïŒHoudini APIã§éå®çãªæ©èœïŒ | ã¯ã |
æŒç®å | ããã | ã¯ã |
ãã©ãŠã¶ãµããŒã | ã¢ãã³ãã©ãŠã¶ | ã³ã³ãã€ã«ãå¿ èŠ |
äŸåé¢ä¿ | ãªã | å€éšããŒã«ãå¿ èŠ |
ã芧ã®ããã«ããã€ãã£ãCSSãã¹ãã£ã³ã°ã¯åºæ¬çãªãã¹ãã£ã³ã°ã®ããŒãºã«å¯ŸããŠããªããã»ããµã®åŒ·åãªä»£æ¿ææ®µãšãªããŸããããªããã»ããµã¯äŸç¶ãšããŠããã¯ã¹ã€ã³ã颿°ã®ãããªé«åºŠãªæ©èœãæäŸããŸããããã®å·®ã¯çž®ãŸã£ãŠããŸããCSSã«ã¹ã¿ã ããããã£ïŒå€æ°ïŒããã¹ã¿ã€ã«ã·ãŒãå šäœã§å€ãåå©çšããæ¹æ³ãæäŸããŸãã
CSSãã¹ãã£ã³ã°ã®æªæ¥ãšãããã
CSSãã¹ãã£ã³ã°ã¯ãCSSã®äžçã«ãããå€ãã®ãšããµã€ãã£ã³ã°ãªçºå±ã®äžã€ã«éããŸãããCSSãé²åãç¶ããã«ã€ããŠãWebéçºãç°¡çŽ åããã³ãŒãã®å質ãåäžãããããã«åŒ·åãªæ©èœãç»å ŽããããšãæåŸ ã§ããŸããHoudini APIã®ãããªæè¡ã¯ãããè±å¯ãªåã·ã¹ãã ãæã€ã«ã¹ã¿ã ããããã£ãã«ã¹ã¿ã ã¢ãã¡ãŒã·ã§ã³ãã«ã¹ã¿ã ã¬ã€ã¢ãŠãã¢ã«ãŽãªãºã ãªã©ãããé«åºŠãªã¹ã¿ã€ãªã³ã°æ©èœãžã®éãéããŠããŸãããããã®æ°ããæè¡ãåãå ¥ããããšã§ãéçºè ã¯äžçäžã®ãŠãŒã¶ãŒã®ããã«ããé åçã§ã€ã³ã¿ã©ã¯ãã£ããªWebäœéšãåµé ã§ããããã«ãªããŸããCSSã¯ãŒãã³ã°ã°ã«ãŒãã¯ãèšèªãæ¹åããWebéçºè ã®ããŒãºã«å¿ããæ°ããæ¹æ³ãåžžã«æš¡çŽ¢ããŠããŸãã
çµè«
CSSãã¹ãã£ã³ã°ã¯ãã€ãã£ãCSSã«ãšã£ãŠå€§ããªåé²ã§ãããSassé¢šã®æ§æã®å©ç¹ãããå€ãã®äººã ã«å±ããŸããã³ãŒãã®å¯èªæ§ãåäžãããä¿å®æ§ãé«ããã³ãŒãã®éè€ãæžããããšã«ãããCSSãã¹ãã£ã³ã°ã¯éçºè ãããã¯ãªãŒã³ã§ãå¹ççã§ãã¹ã±ãŒã©ãã«ãªCSSãæžãããšãå¯èœã«ããŸãããã©ãŠã¶ã®ãµããŒããæ¡å€§ãç¶ããã«ã€ããŠãCSSãã¹ãã£ã³ã°ã¯ãã¹ãŠã®Webéçºè ã®æŠåšåº«ã«äžå¯æ¬ ãªããŒã«ãšãªãã§ãããããããCSSãã¹ãã£ã³ã°ã®åãæŽ»çšããããªãã®Webéçºãããžã§ã¯ãã§æ°ããªã¬ãã«ã®åµé æ§ãšçç£æ§ãè§£ãæŸã¡ãŸãããïŒãã®æ°æ©èœã«ããã倿§ãªèæ¯ãšã¹ãã«ã¬ãã«ã®éçºè ããããä¿å®æ§ãé«ãçè§£ããããCSSãæžãããšãã§ããäžçäžã§ã³ã©ãã¬ãŒã·ã§ã³ãæ¹åããéçºæéãççž®ããããšãã§ããŸããCSSã®æªæ¥ã¯æãããCSSãã¹ãã£ã³ã°ã¯ãã®é²æ©ã®èŒãããäžäŸã§ãã